Various messaging systems are known which enable a user to send a message to another user over a network such as the Internet. Such messages may include instant messaging (IM) messages, voice messages and video messages. To enable this, typically each of the users has a respective instance of a communication client application on his or her respective user terminal (which the user may have installed him- or herself, or which may have come preinstalled, and wherein the client application may be a stand-alone application or may be implemented as functionality incorporated into another application or into the operating system of the terminal). Alternatively one or both of the users may use a web-hosted instance of the communication client.
To send a message, a first of the users composes a message through a user interface of the client application, e.g. by entering a textual message into a free-text field of the user interface. The first user then actuates a send control in the user interface (e.g. clicks or touches a send button), thus causing the first user's client to send the message to the client application of the second user, e.g. via a public network such as the Internet or a private network such as a company intranet. The client of the second user then presents the received message to the second user through a user interface of the second user's client, e.g. displaying it on screen.
Nowadays, it is also known for one of the clients to predict a likely response to a message. That is, upon receipt of a message from the first user, the second user's client may analyse the content of the message and generate a proposed response. The second user then manually selects whether he or she wishes to send the proposed response or instead compose a response of his/her own.